我的PC是Windows 10的作業系統,為了每天連上系統並執行一個指令,以傳回備份備援的狀態。
以往都是用putty這套好用的小程式來撰寫Script,先在putty設定好Session與要執行的指令,名稱是test01
接著在Script撰寫一行指令:putty.exe -load test01,再將script加入排程中,就可以自動執行了。
直到前幾天因為某些原因,重設了另一個資料夾下putty的Session,結果發現原本設定好的test01也不見了。
經查說明文件後,我才知道原來putty的設定是放在windows的registery裡面,所有的putty都會共用這些設定,這樣的話,我就沒有辦法設定兩個putty。
後來在putty的document中發現putty有建議用另一個command line tool:plink來建立script,並提供了許多參數的說明。
可以在官網下載plink,網址如下:
download:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
document:https://the.earth.li/~sgtatham/putty/0.76/htmldoc/
所以我依文件改寫了scirpt,如下:
plink.exe -ssh -l tt01 -i private.key -batch 192.168.199.126 replication status all
上述指令說明:
-ssh:使用ssh協定
-l:指定帳號
-i:private key,我用這個來取代密碼,可用puttygen來產生
-batch:取消所有交談提示
192.168.199.126:Server IP
replication status all:連上Server後要執行的指令
如果要同時執行多個指令時,可用「;」來區分,例如我要執行ls跟df -h,則上述的範例可以改為
plink.exe -ssh -l tt01 -i private.key -batch 192.168.199.126 ls; df -h